/**
 * @IObserver.as
 *
 * @author sodaChen mail:asframe#163.com
 * @version 1.0
 * <br>Copyright (C), 2012 ASFrame.com
 * <br>This program is protected by copyright laws.
 * <br>Program Name:ASFrame
 * <br>Date:2012-1-19
 */
package com.asframe.pattern.observers
{


	/**
	 * 观察者接口,每次接受通知的观察者
	 * @author sodaChen
	 * Date:2012-1-19
	 */
	public interface INoticeObserver
	{
		/**
		 * 相应观察者,如果没有对应的方法或者注册的方法，则会自动调用这个方法
		 * @param notice 触发此次相应的通知
		 * @param args 相关参数（当参数只有一个时，args为单一对象，如果参数是多个的话，则args为数组）
		 *
		 */
		function update(notice:*,args:Array):void;
//		/**
//		 * 添加一个观察者通知
//		 * @param notice 通知名称
//		 * @param linsten 通知监听函数
//		 *
//		 */
//		function addNotice(notice:*,linsten:Function = null):void;
//		/**
//		 * 删除一个观察者通知
//		 * @param notice 通知名称
//		 * @param linsten 删除指定监听函数
//		 *
//		 */
//		function removeNotice(notice:*,linsten:Function = null):void;
//		/**
//		 * 发送一个通知
//		 * @param notice 通知
//		 * @param args 参数
//		 */
//		function notify(notice:*,...args):void;
//		/**
//		 * 获取到监听的通知数组
//		 * @return 包含任何类型的通知数组，一般是数字和字符串
//		 */
//		function getNotices():Array;
	}
}
